The invention relates to a method and a device for establishing a trajectory for a vehicle.
There are various driver assistance systems, which assist the driver of a motor vehicle with a partly automated or completely automated control of the motor vehicle. Such driver assistance systems include lane-change assist systems, braking assist systems, emergency or pedestrian avoidance assist systems or driver assistance systems for a fully automatic control of a motor vehicle.
Here, monitoring trajectories for collisions is very complicated and requires significant computational power in the motor vehicle.
Therefore, there is a significant need for a method and a device for establishing a trajectory for a motor vehicle, which can be carried out efficiently such that these can be calculated in real time where possible.
The invention is therefore based on the object of developing a method and a device for establishing a trajectory for a vehicle, in which efficient monitoring of the trajectory for collisions is possible.
This and other objects are achieved according to the invention.
The method according to the invention for establishing a trajectory in a vehicle comprises the following steps:
a) registering coordinates of objects using a sensor,
b) calculating an occupancy map or cost map on the basis of the registered coordinates, wherein the occupancy map or cost map is subdivided into cells and a cell value is assigned to each cell, which cell value describes the presence and/or the vicinity of an object,
c) calculating a cost space, which comprises a plurality of layers, wherein each layer is subdivided into cells and a cost value is assigned to each cell, wherein the cost values in the respective layers are calculated in each case for a specific orientation of the vehicle on the basis of the cell values, and
d) determining a trajectory that is as cost-effective as possible.
Using the method of the present invention, a cost space comprising a plurality of layers is calculated, wherein each layer is subdivided into cells and a cost value is assigned to each cell, wherein the cost values in the respective layers are calculated in each case for a specific orientation of the vehicle.
An occupancy map is subdivided into cells, wherein each cell represents a specific location. Binary cell values are assigned to the cells. The cell values specify whether an object is situated at the respective location or whether no object is present there.
A cost map is subdivided into cells, wherein each cell represents a specific location. Cost values are assigned to the cells.
A cost value specifies whether the location represented by the cell should be driven-on or avoided. A high cost value means that the location should be avoided. A low cost value means that the location can be driven-on or should be driven-on. The set of numbers for the cost values includes at least more than two numbers. Therefore, cost values are not binary values.
By way of example, cost values can be collision probabilities specifying the probability that a vehicle which drives over the location of the respective cell collides with an object. These collision probabilities specify the probability that an object is present, or not, at a specific location and can include any probability values between 0 and 1. This is particularly expedient if the measurement of the objects is afflicted by measurement uncertainties. The cost values can also contain further information. In particular, the collision costs contain information about the distance to the closest object.
An occupancy map merely specifies at which location an object is present or not present. Hence, such an occupancy map describes the location of the objects and therefore only contains information obtained when registering the coordinates of the objects. Such an occupancy map can be used as a cost map. Since the occupancy map describes the location of the objects using binary values, an occupancy map is not a cost map.
In principle, it is also possible to use an inverse cost system, in which a low cost value means that the location should be avoided and a high cost value means that the corresponding location can be driven-on or should be driven-on. In such an inverse cost system, a cost-effective trajectory is a trajectory with high costs. However, since cost systems generally evaluate high cost values as being negative, the following only considers examples in which a high cost value means that the location should be avoided and a low cost value means that the location can be driven-on or should be driven-on.
Motor vehicles and autonomously driving robots can be used as vehicles. Such robots can be domestic robots which are embodied, e.g., for cleaning floors or for mowing lawns, or else robots in manufacturing plants.
A cost space can be calculated very efficiently from a cost map which is divided into cells, wherein a cost value is assigned to each cell. In order to calculate the cost space, known, modified methods from image processing for expanding or dilating the cost map into the individual layers of the cost space can be used. Therefore, the cost space can be calculated quickly in real time.
The cost values in the cost space can be collision probabilities which can assume all values between 0 and 1 inclusive. The cost values of the cost space can also contain further information in addition to the collision probability or else can be linked to the collision probability. In particular, the collision costs contain information about the distance to the closest object. They can also contain information about the reliability of the coordinates of the objects registered by the sensor.
The method according to the invention preferably establishes a collision-free trajectory. If no collision-free trajectory should be present, a cost function establishes a trajectory that is as cost-effective as possible.
When calculating the occupancy map or the cost map, a distinction is preferably made between static and dynamic objects and the dynamic objects are eliminated or filtered out. By way of example, this is brought about by setting the probabilities for the presence of a dynamic object to zero.
Calculating a layer of a cost space on the basis of the cost map or the occupancy map is brought about, in particular, by virtue of the probabilities for the presence of an object in the occupancy map being expanded by a footprint of the vehicle. In particular, the expansion is performed by a dilation or a convolution.
Each footprint of the vehicle has an anchor or reference point, which, e.g., is the center-of-mass of the vehicle. A point which is arranged in the middle or centrally in the vehicle to the greatest possible extent is preferably selected as anchor. The cell of the layer of the cost space, which corresponds to the location of the cell of the occupancy map at which the anchor of the footprint is situated during expansion and which is referred to as an anchor cell below, is assigned either the sum of all probabilities contained in the cells of the cost map within the footprint or the maximum of all probabilities contained in the cells of the cost map within the footprint.
If a cost map is assumed during the calculation of a layer of a cost space, then the cost values of the cost map can be expanded by means of a binary footprint in order to obtain the cost values of the cost space. By contrast, if an occupancy map is used, then a footprint of the vehicle which, in addition to binary spatial information of the vehicle, also contains additional information, in particular distance information, should be used. By way of example, such a footprint can be a binary footprint which is surrounded by a cost neighborhood which has reducing costs with increasing distance from the center of the vehicle.
The expansion of the cost map to the cost space can be carried out by means of a convolution, wherein, for the purposes of calculating the convolution, the occupancy map and the footprint are preferably transformed into the frequency space. As a result of this, the convolution of each individual cell can be carried out using only a single multiplication.
Before expanding the cost map to the layers of the cost space, the objects are preferably surrounded by a cost neighborhood in each case, wherein the cells within the cost neighborhood in the cost map are assigned cost values which successively decrease to the outer edge of the cost neighborhood. This corresponds to a cost function with which a very small distance between an obstacle and the vehicle is occupied by high costs.
The expansion can be carried out by means of a convolution, wherein a predetermined number of cost values are discretized and an inverse imaging function (h(n)) is used to image the convolution results onto a cost dilation. As a result of this, a cost dilation is obtained by means of a convolution.
A footprint of the vehicle preferably has a rectangular or square embodiment. Identical symmetries of the footprint in a cost map are preferably only calculated once. In the case of a rectangular form, the number of calculations can thus be halved. In the case of a square form of the vehicle, the number of computation processes can be reduced to a quarter.
The dilation or the expansion of a two-dimensional footprint of the vehicle can be replaced by two dilations with in each case a one-dimensional footprint. This can significantly reduce computational complexity. The footprint is preferably aligned in the axial direction of the cost map. Here, in particular, use is made of the vHGW method.
The cost values of the individual cells, through which the trajectory extends, are preferably weighted by the length of the respective portion of the trajectory in the corresponding cell when determining a trajectory in the cost space. As a result of this, a correct overall value of the collision probability or of the costs is established with little computational complexity.
A device for establishing a trajectory for a vehicle comprises a sensor apparatus, a computer apparatus and an interface, wherein the computer apparatus has a computer program embodied to execute a method as mentioned above.
A trajectory with a risk of collision that is as low as possible can be provided at the interface. The interface can be coupled to a lane-change assist system, an automatic braking assist system, an emergency or pedestrian avoidance assist system or a completely autonomous driver assistance system.
The device can also be a component of a house or lawn robot, which automatically identifies obstacles and drives around them. Such a lawn robot, which may e.g. be embodied as a mowing robot, can also include a camera as a sensor apparatus, by means of which it identifies regions in which the grass has not yet been cut and assigns low costs to these regions such that the driving and mowing is preferably carried out in regions with uncut grass, wherein, preferably, the sensor apparatus additionally has a laser scanner for precisely detecting obstacles.
In principle, a sensor apparatus of these devices for vehicles and robots can be a laser scanner and/or a camera with the corresponding digital image evaluation apparatus and/or a radar.
Other objects, advantages and novel features of the present invention will become apparent from the following detailed description of one or more preferred embodiments when considered in conjunction with the accompanying drawings.